今天我們一樣要來做練習,那我們就開始吧。
讓使用者輸入一整數,求此整數以下(包含此數)的質數和,並打印,例如:輸入7,打印(2+3+5+7)之總和。
我們之前也有練習過有關質數的題目,大家如果有些忘記可以再回去複習一下。
a=int(input())
number=0 #代表質數和
for i in range(1,a+1):
sum=0 #代表每個數字的因數數量
for j in range(1,i+1):
if i%j==0:
sum=sum+1
if sum==2:
number=number+i
print(number)
那首先當然是輸入數字。再來我把number設為0,我把這當做質數和,之後會慢慢累加。之後就是迴圈了,最外面那個for i in range的迴圈是在跑我們輸入數字a以下的數,那在來裡面我把sum設為0,sum代表每個i的質因數數量,那之所以要放在這邊就是因為每測試完一個i之後都必須要把它歸零。裡面的迴圈就是測試,假如可以整除,sum就加1。那測試完之後,如果是質數,就把他加在number上,最後打印。